﻿using System.Collections.Generic;
using System.ServiceModel;
using DroidClaim.Service.Dto;
using System.ServiceModel.Activation;


namespace DroidClaim.Service
{
    // NOTE: You can use the "Rename" command on the "Refactor" menu to change the interface name "IService" in both code and config file together.
    [ServiceContract]
    //[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
    public interface IService
    {
	
	        [OperationContract]
        ResponseDto<ClaimInfoDto> AddClaimInfo(ClaimInfoDto arg);

        [OperationContract]
        ResponseDto<ClaimInfoDto> DeleteClaimInfo(List<string> args);

        [OperationContract]
        ResponseDto<List<ClaimInfoDto>> GetAllClaimInfo(GetAllClaimInfoRequestDto arg);

        [OperationContract]
        ResponseDto<ClaimInfoDto> UpdateClaimInfo(ClaimInfoDto arg);
		
	        [OperationContract]
        ResponseDto<ClaimStatusDto> AddClaimStatus(ClaimStatusDto arg);

        [OperationContract]
        ResponseDto<ClaimStatusDto> DeleteClaimStatus(List<string> args);

        [OperationContract]
        ResponseDto<List<ClaimStatusDto>> GetAllClaimStatus(GetAllClaimStatusRequestDto arg);

        [OperationContract]
        ResponseDto<ClaimStatusDto> UpdateClaimStatus(ClaimStatusDto arg);
		
	        [OperationContract]
        ResponseDto<CliamDocDto> AddCliamDoc(CliamDocDto arg);

        [OperationContract]
        ResponseDto<CliamDocDto> DeleteCliamDoc(List<string> args);

        [OperationContract]
        ResponseDto<List<CliamDocDto>> GetAllCliamDoc(GetAllCliamDocRequestDto arg);

        [OperationContract]
        ResponseDto<CliamDocDto> UpdateCliamDoc(CliamDocDto arg);
		
	        [OperationContract]
        ResponseDto<CustomerDto> AddCustomer(CustomerDto arg);

        [OperationContract]
        ResponseDto<CustomerDto> DeleteCustomer(List<string> args);

        [OperationContract]
        ResponseDto<List<CustomerDto>> GetAllCustomer(GetAllCustomerRequestDto arg);

        [OperationContract]
        ResponseDto<CustomerDto> UpdateCustomer(CustomerDto arg);
		
	        [OperationContract]
        ResponseDto<RejectedHistoryDto> AddRejectedHistory(RejectedHistoryDto arg);

        [OperationContract]
        ResponseDto<RejectedHistoryDto> DeleteRejectedHistory(List<string> args);

        [OperationContract]
        ResponseDto<List<RejectedHistoryDto>> GetAllRejectedHistory(GetAllRejectedHistoryRequestDto arg);

        [OperationContract]
        ResponseDto<RejectedHistoryDto> UpdateRejectedHistory(RejectedHistoryDto arg);
		
	        [OperationContract]
        ResponseDto<SurveyorDto> AddSurveyor(SurveyorDto arg);

        [OperationContract]
        ResponseDto<SurveyorDto> DeleteSurveyor(List<string> args);

        [OperationContract]
        ResponseDto<List<SurveyorDto>> GetAllSurveyor(GetAllSurveyorRequestDto arg);

        [OperationContract]
        ResponseDto<SurveyorDto> UpdateSurveyor(SurveyorDto arg);
		
	        [OperationContract]
        ResponseDto<SurveyorLocationDto> AddSurveyorLocation(SurveyorLocationDto arg);

        [OperationContract]
        ResponseDto<SurveyorLocationDto> DeleteSurveyorLocation(List<string> args);

        [OperationContract]
        ResponseDto<List<SurveyorLocationDto>> GetAllSurveyorLocation(GetAllSurveyorLocationRequestDto arg);

        [OperationContract]
        ResponseDto<SurveyorLocationDto> UpdateSurveyorLocation(SurveyorLocationDto arg);
		
	        [OperationContract]
        ResponseDto<ClaimNumberDto> AddClaimNumber(ClaimNumberDto arg);

        [OperationContract]
        ResponseDto<ClaimNumberDto> DeleteClaimNumber(List<string> args);

        [OperationContract]
        ResponseDto<List<ClaimNumberDto>> GetAllClaimNumber(GetAllClaimNumberRequestDto arg);

        [OperationContract]
        ResponseDto<ClaimNumberDto> UpdateClaimNumber(ClaimNumberDto arg);
		
	        [OperationContract]
        ResponseDto<SessionInfoDto> AddSessionInfo(SessionInfoDto arg);

        [OperationContract]
        ResponseDto<SessionInfoDto> DeleteSessionInfo(List<string> args);

        [OperationContract]
        ResponseDto<List<SessionInfoDto>> GetAllSessionInfo(GetAllSessionInfoRequestDto arg);

        [OperationContract]
        ResponseDto<SessionInfoDto> UpdateSessionInfo(SessionInfoDto arg);
		
	
	}
}

